perm filename TWOD.REP[EYE,HE] blob
sn#205219 filedate 1976-03-11 generic text, type C, neo UTF8
COMMENT ā VALID 00003 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 Line Drawing Representation
C00004 00003 FILES:
C00006 ENDMK
Cā;
Line Drawing Representation
To represent line drawings composed of straight lines, there are
several equivalent representations.
What operations does one do on these graphs?
traversal
connectivity
shared edges
regions
interior
geometry--angles at vertices
metric -- ask for the length of a line segment
would like to be able to scale, rotate, and shift these graphs
add and delete vertices &/or line segments
subgraph matching ... is the subgraph X in graph Y ... topologically or metric
possibly take "sub-windows" of a graph (and then look for subgraph)
what line segments intersect line segment X
what line segments are within a distance of Y from segment X
what is the closest point on segment Y to vertex X
In generalizing, vertices by themselves are not so useful. They don't
specify curves.
VERTICES AND CONNECTIVITY
Everything about the line drawing can be determined (with some work)
from this representation.
an example:
(v1 v2 v3 v4 ......)
v1 location (x11,x12) connectivity (v2 v4)
MODIFIED VERTEX AND CONNECTIVITY (resembling "winged-edge")
FILES:
to work with large pictures need to break them down into smaller blocks of
high resolution along with the whole picture in coarse resolution or the whole
picture in high resolution(posssibly).
blocks should be subwindow of picture larger than single raster and should
be efficient as regards disk usage and access into the picture.
we might want to read irregularly shaped pictures e.g. a diagonal line.
so will need flexible representation. One such is the "edge vector" or
run-length coding. Each line has:
byte ptr, starting coordinate, ending coordinate
of course, that could be double-valued. We could have several runs per row.
There will be some pictures for which the rows should be columns, ie that the
horizontal lines won't win in all cases.
They might be vertical or diagonal. That is an added complication which
we will avoid. Particularly, one part of an image may like lines in one
orientation and another part of the image may like another orientation.
Nature always fixes it so that we can't outsmart geometry.